![]() |
![]() |
|
rtk 20042004.1.11. podnalogaPri pisanju sporočil na prenosne telefonu moramo vsakič, ko dve sosednji črki pripadata isti tipki prenosnega telefona, malce počakati. Če želimo na primer natipkati besedilo bacil, moramo pritisniti tipke: 2 2 (za b), 2 (za a), 2 2 2 (za c), 4 4 4 (za i), 5 5 5 (za l). To pomeni, da moramo dvakrat malce počakati - preden natipkamo a in preden natipkamo c. NalogaNapiši funkcijo Razpored po tipkah: Vhodni podatkiArgument Izhodni podatkiFunkcija vrne eno samo število (število čakanj). PrimerVhod
Izhod
Uradna rešitevdef sms(besedilo): """funkcija kot parameter besedilo dobi niz znakov in vrne število kolikokrat moramo počakati, da natipkamo besedilo na telefon""" cakanje = 0 tipkovnica = {' ':1, 'a':2, 'b':2, 'c':2, 'd':3, 'e':3, 'f':3, 'g':4, 'h':4, 'i': 4, 'j':5, 'k':5, 'l':5, 'm':6, 'n':6, 'o':6, 'p':7, 'q':7, 'r':7, 's':7, 't': 8, 'u':8, 'v':8, 'w':9, 'x':9, 'y':9, 'z':9} if len(besedilo) < 2: return cakanje prejsnja = besedilo[0] for crka in besedilo[1:]: if tipkovnica[crka] == tipkovnica[prejsnja]: cakanje += 1 else: prejsnja = crka return cakanje 2004.2.11. podnalogaNalogaNapiši funkcijo Vhodni podatkiFunkcija Izhodni podatkiFunkcija vrne seznam dolžine PrimerVhod
Izhod
Uradna rešitevdef novo_zaporedje(n, vhodno_zaporedje): """na podlagi vhodnega zaporedja vrne izhodno zaporedje""" izhodno_zaporedje = [] neizpisana = {i + 1 for i in range(n)} for st_vhodno in vhodno_zaporedje: while True: if st_vhodno in neizpisana: neizpisana.remove(st_vhodno) izhodno_zaporedje.append(st_vhodno) break else: if st_vhodno + 1 <= n: st_vhodno += 1 else: st_vhodno = 1 return izhodno_zaporedjeMesto objave ob koncu projekta 15.9.2018 |